package com.docshell.exceptions;

import com.docshell.exceptions.AbstractException;

public class DocShellException  extends AbstractException {

	/**
	 * WrapperException ID.
	 */
	private static final long serialVersionUID = 6586147373132779253L;
	
	public static final String DOC_CHECKED_OUT_BY_ALIEN = "DOC_CHECKED_OUT_BY_ALIEN";
	
	public static final String OBJECT_NOT_FOUND = "OBJECT_NOT_FOUND";
	
	public static final String UNKNOWN_EXCEPTION = "UNKNOWN_EXCEPTION";
	
	public static final String PARENT_CONTIANER_DOES_NOT_EXIST = "PARENT_CONTIANER_DOES_NOT_EXIST";
	
	public static final String NOT_A_CONTIANER = "NOT_A_CONTIANER";
	
	public static final String ACCESS_EXCEPTION = "ACCESS_EXCEPTION";
	
	public static final String FILE_EXISTS = "FILE_EXISTS";
	
	public static final String PROPERTY_DOES_NOT_EXIST = "PROPERTY_DOES_NOT_EXIST";
	
	public static final String PROPERTY_FILE_NOT_LOADED = "PROPERTY_FILE_NOT_LOADED";
	
	public static final String DECODE_FAILED = "DECODE_FAILED";
	
	public static final String DFC_EXCEPTION = "DFC_EXCEPTION";
	
	public static final String IO_EXCEPTION = "IO_EXCEPTION";

	public static final String ERROR_IN_DQL = "Error in execuring DQL, Following is message returned from server:";
	
	public static final String ERROR_IN_API = "Error in execuring API, Following is message returned from server:";
	
	/**
	 * @param messageCode
	 * @param message
	 * @param cause
	 */
	public DocShellException(String messageCode, String message, Throwable cause) {
		this.goMessageCode = messageCode;
		this.goMessage = message;
		this.goCause = cause;
	}
	
	/**
	 * @param messageCode
	 * @param message
	 */
	public DocShellException(String messageCode, String message) {
		this.goMessageCode = messageCode;
		this.goMessage = message;
	}
}
